package bit_pratice.day2;

import java.util.Scanner;

/**
 * @author 美女
 * @date 2022/04/23 09:18
 **/
public class Num2_ReverseString2 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String str= sc.nextLine();
        char[] ch=str.toCharArray();//字符串->字符数组
        reverse(ch,0,ch.length-1);//整体逆置数组所有字符
        //部分逆置每个单词中的字符，以空格为单位
        //定义i从0下标开始,j从i下标开始，j去找每段单词开始和结尾
        for (int i = 0; i < ch.length; ) {
            int j=i;
            while(j< ch.length&&ch[j]!=' '){
                j++;
            }

            if(j< ch.length){
                //j走到了单个单词最后
                reverse(ch,i,j-1);
                i=j+1;
            }else{
                reverse(ch,i,j-1);
                i=j;
            }
        }
        String s=new String(ch);
        System.out.println(s);

    }

    /**
     * 逆置左右区间的str字符串
     * @param array
     * @param l
     * @param r
     */
    private static void reverse(char[] array, int l, int r) {
        while(l<r){
            char temp=array[l];
            array[l]=array[r];
            array[r]=temp;
            l++;
            r--;
        }
    }
}
